# 遍历某个文件夹 判断他们是目录还是文件

"""
    思路分析
    先考虑单级目录
    1.获取文件夹(日录)的所有内容(元素)，包含了文件和目录
    2.判断是文件还是目录，输出对应的信息
"""
import os

def traverse_floder(path):
    """
        遍历某个文件夹
        :param path: 文件夹路径
        :return:
    """
    # 获取文件夹(日录)的所有内容(元素)，包含了文件和目录
    floder_content = os.listdir(path)
    for item in floder_content:
        # 拼接路径
        item_path = os.path.join(path, item)
        # 判断是文件还是目录
        if os.path.isdir(item_path):
            print("目录：", item_path)
        else:
            print("文件：", item_path)


if __name__ == '__main__':
    # 获取当前脚本所在的路径
    current_path = os.path.dirname(os.path.abspath(__file__))
    print(current_path)
    # 拼接路径
    path = os.path.join(current_path, "test")
    traverse_floder(path)


"""
    思路分析
    先考虑多级目录
    1.获取文件夹(日录)的所有内容(元素)，包含了文件和目录
    2.判断是文件还是目录，输出对应的信息
    2.1.如果是目录，则输出信息即可
    2.2.如果是文件，直接输出信息即可
"""
def traverse_floder(path):
    """
        遍历某个文件夹
        :param path: 文件夹路径
        :return:
    """
    # 获取文件夹(日录)的所有内容(元素)，包含了文件和目录
    floder_content = os.listdir(path)
    for item in floder_content:
        # 拼接路径
        item_path = os.path.join(path, item)
        # 判断是文件还是目录
        if os.path.isdir(item_path):
            print("目录：", item_path)
            # 递归调用
            traverse_floder(item_path)
        else:
            print("文件：", item_path)